home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / sys / amiga / programmer / 847 < prev    next >
Encoding:
Internet Message Format  |  1996-08-05  |  5.6 KB

  1. Path: cs.uwa.edu.au!jasonb
  2. From: jasonb@cs.uwa.edu.au (Jason S Birch)
  3. Newsgroups: comp.sys.amiga.programmer
  4. Subject: Re: Amiga programmers in deep shit...
  5. Date: 12 Jan 96 01:35:52 GMT
  6. Organization: The University of Western Australia
  7. Message-ID: <jasonb.821410552@cs.uwa.edu.au>
  8. References: <4bsgo0$3sg@bagan.srce.hr> <2317.6571T521T1370@rhein-neckar.de> <45915670@data.franken.de> <jasonb.820810317@cs.uwa.edu.au> <45915679@data.franken.de>
  9. NNTP-Posting-Host: decadence.cs.uwa.oz.au
  10. X-Newsreader: NN version 6.5.0 #3 (NOV)
  11.  
  12. "Walter Doerwald" <walter@data.franken.de> writes:
  13. >> As for GCC's usefulness, I suspect the errors
  14. >> you've given indicate a lack of resources on your machine to run it
  15.  
  16. >I have 2MB chip and 16MB fast, so IMHO there should be no problem.
  17.  
  18. Well, that, of course, depends on how much RAM it needs. :-) Have you
  19. checked how much it's using under NT?
  20.  
  21. >It compiles fine with GCC 2.7.2 under DEC/Ultrix and with Borland C++ 4.5
  22. >under Windows NT (BTW, it takes two minutes to compile under WNT)
  23.  
  24. I did some tests a few weeks ago comparing the relative cost of using
  25. C++ to C under various compilers and OS's. With SAS/C is was *very*
  26. expensive (time, memory, and final object size), while with Visual C++
  27. 2.0 under NT it was minimal (and the final object size was only a few
  28. k larger than the Amiga C++ binary!). Still, given my opinions of C++,
  29. it's no great loss to me.
  30.  
  31. >> which says it's not useable on *your*
  32. >> Amiga, as opposed to "the" Amiga.
  33.  
  34. >So I'll need to buy another 8 or 16MB of memory (and something to put the
  35. >memory on since the motherboard ist full)
  36.  
  37. If necessary, yes. gcc's a real memory hog, so if you've got a large
  38. program I guess there are not many options. How much memory does your NT
  39. box have? Subtract 20M from the "committed bytes" during a compile,
  40. and that should give you an idea of how much you'll need.
  41.  
  42. >I've even tried VMM, it works, but it takes more than 24 hours and 1.2
  43. >million pagefaults. :'-( Hardly an environment to do software development.
  44.  
  45. Agreed.
  46.  
  47. >> ALSt304.lzh        dev/lang   380K  73+Amiga Little Smalltalk version 3.04
  48. >> SmallTalk.lha      dev/lang   227K 428+Port of the Little Smalltalk system.
  49. >> smalltlk.lha       dev/lang   362K  18+Amiga Little Smalltalk version 3.09
  50.  
  51. >I know Little Smalltalk (I've done the V40-guide ;))
  52.  
  53. :-)
  54.  
  55. >But Little Smalltalk (developed by Timothy Budd) is *not* Smalltalk80
  56. >(developed by ParcPlace/Digitalk). 
  57.  
  58. I know - I did my CS honours project in Smalltalk/V for Windows, by
  59. Digitalk. It even runs fast on a Pentium. ;-)
  60.  
  61. >Little Smalltalk is much more limited.
  62. >E.g. Smalltalk80 supports catagories, i.e. you can put your classes into
  63. >different categories (e.g. one catagories for each project). This works for
  64. >methods too, etc. etc. Smalltalk80 has GUI-classes (but hopefully we'll
  65. >have (MUI) GUI classes for ALSt too)
  66.  
  67. It would be nice. Smalltalk's one of my favourite languages.
  68.  
  69. >> I seem to recall a text-only SmallTalk80 from years ago, but I don't
  70. >> know where it is (it might have been a generic Unix program).
  71.  
  72. >This was probably the first version of Little Smalltalk from FishDisk 1(?).
  73.  
  74. I don't recall. It was a while back. I *did* think it was Smalltalk80,
  75. though, but I can't remember why.
  76.  
  77. >> None of
  78. >> these have very many custom classes, however, which limits their
  79. >> current usefulness for application design.
  80.  
  81. >Especially the nonexistent GUI classes.
  82.  
  83. Yes.
  84.  
  85. >> I haven't used it for a long time, but it has a few neat features -
  86. >> exception handling, built-in lists, and I believe now
  87. >> object-orientation.
  88.  
  89. >Exception handling in what way? The way C++ does it? (Calling destructors
  90. >when throwing an exception)
  91.  
  92. Apparently it does exceptions the same way ADA does (that's what the
  93. docs claim - I personally have no experience with ADA). You can, for
  94. example, do something like: (taken from the docs)
  95.  
  96. CONST SIZE=100000
  97. ENUM NOMEM  /* ,... */
  98.  
  99. RAISE NOMEM IF AllocMem()=NIL
  100.  
  101. PROC main()
  102.   alloc()
  103. ENDPROC
  104.  
  105. PROC alloc() HANDLE
  106.   DEF mem
  107.   mem:=AllocMem(SIZE,0)         /* see how many blocks we can get */
  108.   alloc()                       /* do recursion */
  109. EXCEPT DO
  110.   IF mem THEN FreeMem(mem,SIZE)
  111.   ReThrow()                     /* recursively call all handlers */
  112. ENDPROC                               
  113.  
  114. >What does built-in lists mean? Has E features to define new types, and the
  115. >lists are part of the standard library? Or are they hard wired?
  116.  
  117. It seems lists are hard wired, but they come with a full set of support
  118. functions for appending, etc. However, E can define new types, and
  119. also has LISP cells, interestingly enough, with Car, Cdr, and automatic
  120. garbage collection. (I'm scanning through the docs having just ftp'd
  121. the archive. It seems quite neat.)
  122.  
  123. >OO? This probably means it's possible to define new types. Does E
  124. >distinguish between inheritance of interface and inheritance of
  125. >implementation?
  126.  
  127. It's a little hard to tell from the quick glance I've given it. If you
  128. want to take a look, grab aminet:dev/e/amigae32a.lha.
  129.  
  130. >I suppose E gives you crashes, when putting the wrong type into variables.
  131.  
  132. I suppose only if you then use those variables incorrectly. :-) I
  133. mean, given it's a type-free language, it could hardly get too upset
  134. if you put different types into a variable. Naturally enough, however,
  135. if you use incorrect types in function calls, it could crash. Shame,
  136. really - it seems rather cool apart from that.
  137.  
  138. >Bye...
  139. >    Walter Doerwald
  140.  
  141. -- 
  142. Jason S Birch                        ,-_|\ email: jasonb@cs.uwa.edu.au
  143. Department of Computer Science      /     \ Tel (work): +61 9 380 1840
  144. The University of Western Australia *_.-._/ Fax (work): +61 9 380 1089
  145. Nedlands  W. Australia  6907             v  Tel (home): +61 9 386 8630
  146.